# Project:	Director:Menus.Files


# Tool macros

asm_		= objasm
cdir		= cdir
link		= link
text2basic	= <Prefix$Dir>.t2b.$@; BASIC
wipe		= X wipe


# Flag macros

# depend	= -depend !Depend
# throwback	= -throwback

asmflags	= $(throwback) $(depend) -i <OSLib$Dir>
linkflags	= $(debug_l) -o $@
wipeflags	= ~CFRV


# Combines macros

asm		= $(asm_) $(asmflags)
link_app	= $(link) $(linkflags) -aif
link_util	= $(link) $(linkflags)


# Files to make

files		= \
		CDFS \
		CVSMenu \
		ExplodeDir \
		FilerMenu \
		FileTypes \
		MenuMenu \
		PCDirMenu \
		TreePick \
		TreePickSM


all:		$(files) setup

setup:
		$(cdir) @.o

clean:
		$(wipe) <Prefix$Dir>.o          $(wipeflags)

maintainerclean:
		$(wipe) <Prefix$Dir>.o          $(wipeflags)
		$(wipe) <Prefix$Dir>.CDFS       $(wipeflags)
		$(wipe) <Prefix$Dir>.CVSMenu    $(wipeflags)
		$(wipe) <Prefix$Dir>.ExplodeDir $(wipeflags)
		$(wipe) <Prefix$Dir>.FilerMenu  $(wipeflags)
		$(wipe) <Prefix$Dir>.FileTypes  $(wipeflags)
		$(wipe) <Prefix$Dir>.MenuMenu   $(wipeflags)
		$(wipe) <Prefix$Dir>.PCDirMenu  $(wipeflags)
		$(wipe) <Prefix$Dir>.TreePick   $(wipeflags)
		$(wipe) <Prefix$Dir>.TreePickSM $(wipeflags)

nosource:
		$(wipe) <Prefix$Dir>.CVS        $(wipeflags)
		$(wipe) <Prefix$Dir>.bas        $(wipeflags)
		$(wipe) <Prefix$Dir>.o          $(wipeflags)
		$(wipe) <Prefix$Dir>.s          $(wipeflags)
		$(wipe) <Prefix$Dir>.t2b        $(wipeflags)
		$(wipe) <Prefix$Dir>.Makefile   $(wipeflags)


# Individual targets

CDFS:		@.bas.CDFS
		$(text2basic)

CVSMenu:	@.bas.CVSMenu
		$(text2basic)

ExplodeDir:	@.bas.ExplodeDir
		$(text2basic)

FilerMenu:	@.bas.FilerMenu
		$(text2basic)

FileTypes:	o.FileTypes
		$(link_util) o.FileTypes
		SetType $@ Utility

MenuMenu:	@.bas.MenuMenu
		$(text2basic)

PCDirMenu:	@.bas.PCDirMenu
		$(text2basic)

TreePick:	@.bas.TreePick
		$(text2basic)

TreePickSM:	@.bas.TreePickSM
		$(text2basic)


# Rule Patterns

.SUFFIXES:	.o

.s.o:;		$(asm) $< $@


# Static dependencies

o.FileTypes: s.FileTypes
